package com.itheima.d10_api_object;

import com.itheima.d10_api_object.bean.Student;

/*
    Object的toString，equals方法使用
 */
public class Test1 {
    public static void main(String[] args) {
        /*
    Object的toString，equals方法使用

    toString方法是将对象变成字符串形式：
    toString 在Object中源码：
    public String toString() {
        return getClass().getName() + "@" + Integer.toHexString(hashCode());
    }
    一般，我们定义一个JavaBean时，都会重写toString，以便打印对象时可以看到对象的内容。


    equals方法是用来比较两个对象是否相同：
    Object源码： 直接两个对象 == 比较是否相同
    public boolean equals(Object obj) {
        return (this == obj);
    }
    我们认为，只要两个对象其类型相同，其内部的属性值也想通，就认为两个对象是相同的。子类需要重写
 */
        Student student2 = new Student();
        System.out.println(student2);
        System.out.println(student2.toString());


        Student student = new Student("张三",19);
        Student student1 = new Student("张三",19);
        System.out.println(student == student1);//false  比较的是地址值

        boolean equals = student.equals(student1);
        System.out.println(equals);//重写前为false，重写后为true


    }
}












